package tagdb.model.params;

/**
 * <b>SearchParams</b>
 * <p>
 * This class holds the database search parameters set by the user.
 * </p>
 *
 * @author T.Muth
 */
public class SearchParams {

    /**
     * The precursor mass tolerance.
     */
    private double precursorTol;

    /**
     * The fragment mass tolerance.
     */
    private double fragmentTol;

    /**
     * The maximum number of missed cleavages.
     */
    private int maxMissedCleavages;

    /**
     * The database search parameters default constructor.
     *
     * @param precursorTol       The precursor mass tolerance.
     * @param fragmentTol        The fragment mass tolerance.
     * @param maxMissedCleavages The maximum number of missed cleavages.
     */
    public SearchParams(double precursorTol, double fragmentTol, int maxMissedCleavages) {
        this.precursorTol = precursorTol;
        this.fragmentTol = fragmentTol;
        this.maxMissedCleavages = maxMissedCleavages;
    }

    /**
     * Returns the precursor mass tolerance.
     *
     * @return The precursor mass tolerance.
     */
    public double getPrecursorTol() {
        return precursorTol;
    }

    /**
     * Returns the fragment mass tolerance.
     *
     * @return The fragment mass tolerance.
     */
    public double getFragmentTol() {
        return fragmentTol;
    }

    /**
     * Returns the maximum number of missed cleavages.
     *
     * @return The maximum number of missed cleavages.
     */
    public int getMissedCleavages() {
        return maxMissedCleavages;
    }
}
